{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Simulators\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Introduction\n",
    "\n",
    "This notebook shows how to import the *Qiskit Aer* simulator backend and use it to run ideal (noise free) Qiskit Terra circuits."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-08-19T16:50:28.054060Z",
     "start_time": "2019-08-19T16:50:22.255565Z"
    }
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "\n",
    "# Import Qiskit\n",
    "from qiskit import QuantumCircuit\n",
    "from qiskit import Aer, transpile\n",
    "from qiskit.tools.visualization import plot_histogram, plot_state_city\n",
    "import qiskit.quantum_info as qi"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## The Aer Provider\n",
    " \n",
    "The `Aer` provider contains a variety of high performance simulator backends for a variety of simulation methods. The available backends on the current system can be viewed using `Aer.backends`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[AerSimulator('aer_simulator'),\n",
       " AerSimulator('aer_simulator_statevector'),\n",
       " AerSimulator('aer_simulator_density_matrix'),\n",
       " AerSimulator('aer_simulator_stabilizer'),\n",
       " AerSimulator('aer_simulator_matrix_product_state'),\n",
       " AerSimulator('aer_simulator_extended_stabilizer'),\n",
       " AerSimulator('aer_simulator_unitary'),\n",
       " AerSimulator('aer_simulator_superop'),\n",
       " QasmSimulator('qasm_simulator'),\n",
       " StatevectorSimulator('statevector_simulator'),\n",
       " UnitarySimulator('unitary_simulator'),\n",
       " PulseSimulator('pulse_simulator')]"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Aer.backends()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## The Aer Simulator\n",
    " \n",
    "The main simulator backend of the Aer provider is the `AerSimulator` backend. A new simulator backend can be created using `Aer.get_backend('aer_simulator')`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "simulator = Aer.get_backend('aer_simulator')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The default behavior of the `AerSimulator` backend is to mimic the execution of an actual device. If a `QuantumCircuit` containing measurements is run it will return a count dictionary containing the final values of any classical registers in the circuit. The circuit may contain gates, measurements, resets, conditionals, and other custom simulator instructions that will be discussed in another notebook."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Simulating a quantum circuit\n",
    "\n",
    "The basic operation runs a quantum circuit and returns a counts dictionary of measurement outcomes. Here we run a simple circuit that prepares a 2-qubit Bell-state $\\left|\\psi\\right\\rangle = \\frac{1}{2}\\left(\\left|0,0\\right\\rangle + \\left|1,1 \\right\\rangle\\right)$ and measures both qubits."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 504x360 with 1 Axes>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Create circuit\n",
    "circ = QuantumCircuit(2)\n",
    "circ.h(0)\n",
    "circ.cx(0, 1)\n",
    "circ.measure_all()\n",
    "\n",
    "# Transpile for simulator\n",
    "simulator = Aer.get_backend('aer_simulator')\n",
    "circ = transpile(circ, simulator)\n",
    "\n",
    "# Run and get counts\n",
    "result = simulator.run(circ).result()\n",
    "counts = result.get_counts(circ)\n",
    "plot_histogram(counts, title='Bell-State counts')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Returning measurement outcomes for each shot\n",
    "\n",
    "The `QasmSimulator` also supports returning a list of measurement outcomes for each individual shot. This is enabled by setting the keyword argument `memory=True` in the `run`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-08-19T16:50:57.035995Z",
     "start_time": "2019-08-19T16:50:57.016437Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "['00', '00', '11', '11', '00', '00', '11', '11', '00', '00']\n"
     ]
    }
   ],
   "source": [
    "# Run and get memory\n",
    "result = simulator.run(circ, shots=10, memory=True).result()\n",
    "memory = result.get_memory(circ)\n",
    "print(memory)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Aer Simulator Options\n",
    "\n",
    "The `AerSimulator` backend supports a variety of configurable options which can be updated using the `set_options` method. See the `AerSimulator` API documentation for additional details."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Simulation Method\n",
    "\n",
    "The `AerSimulator` supports a variety of simulation methods, each of which supports a different set of instructions. The method can be set manually using `simulator.set_option(method=value)` option, or a simulator backend with a preconfigured method can be obtained directly from the `Aer` provider using `Aer.get_backend`.\n",
    "\n",
    "When simulating ideal circuits, changing the method between the exact simulation methods `stabilizer`, `statevector`, `density_matrix` and `matrix_product_state` should not change the simulation result (other than usual variations from sampling probabilities for measurement outcomes)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 504x360 with 1 Axes>"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Increase shots to reduce sampling variance\n",
    "shots = 10000\n",
    "\n",
    "# Stabilizer simulation method\n",
    "sim_stabilizer = Aer.get_backend('aer_simulator_stabilizer')\n",
    "job_stabilizer = sim_stabilizer.run(circ, shots=shots)\n",
    "counts_stabilizer = job_stabilizer.result().get_counts(0)\n",
    "\n",
    "# Statevector simulation method\n",
    "sim_statevector = Aer.get_backend('aer_simulator_statevector')\n",
    "job_statevector = sim_statevector.run(circ, shots=shots)\n",
    "counts_statevector = job_statevector.result().get_counts(0)\n",
    "\n",
    "# Density Matrix simulation method\n",
    "sim_density = Aer.get_backend('aer_simulator_density_matrix')\n",
    "job_density = sim_density.run(circ, shots=shots)\n",
    "counts_density = job_density.result().get_counts(0)\n",
    "\n",
    "# Matrix Product State simulation method\n",
    "sim_mps = Aer.get_backend('aer_simulator_matrix_product_state')\n",
    "job_mps = sim_mps.run(circ, shots=shots)\n",
    "counts_mps = job_mps.result().get_counts(0)\n",
    "\n",
    "plot_histogram([counts_stabilizer, counts_statevector, counts_density, counts_mps],\n",
    "               title='Counts for different simulation methods',\n",
    "               legend=['stabilizer', 'statevector',\n",
    "                       'density_matrix', 'matrix_product_state'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Automatic Simulation Method\n",
    "The default simulation method is `automatic` which will automatically select a one of the other simulation methods for each circuit based on the instructions in those circuits. A fixed simualtion method can be specified by by adding the method name when getting the backend, or by setting the `method` option on the backend."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### GPU Simulation\n",
    "\n",
    "The `statevector`, `density_matrix` and `unitary` simulators support running on a NVidia GPUs. For these methods the simulation device can also be manually set to CPU or GPU using `simulator.set_options(device='GPU')` backend option. If a GPU device is not available setting this option will raise an exception."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\"Invalid simulation device GPU. Available devices are: ['CPU']\"\n"
     ]
    }
   ],
   "source": [
    "from qiskit.providers.aer import AerError\n",
    "\n",
    "# Initialize a GPU backend\n",
    "# Note that the cloud instance for tutorials does not have a GPU\n",
    "# so this will raise an exception.\n",
    "try:\n",
    "    simulator_gpu = Aer.get_backend('aer_simulator')\n",
    "    simulator_gpu.set_options(device='GPU')\n",
    "except AerError as e:\n",
    "    print(e)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The `Aer` provider will also contain preconfigured GPU simulator backends if Qiskit Aer was installed with GPU support on a complatible system:\n",
    "\n",
    "* `aer_simulator_statevector_gpu`\n",
    "* `aer_simulator_density_matrix_gpu`\n",
    "* `aer_simulator_unitary_gpu`\n",
    "\n",
    "*Note: The GPU version of Aer can be installed using `pip install qiskit-aer-gpu`.*"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Simulation Precision\n",
    "\n",
    "One of the available simulator options allows setting the float precision for the `statevector`, `density_matrix` `unitary` and `superop` methods.  This is done using the `set_precision=\"single\"` or `precision=\"double\"` (default) option:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'11': 509, '00': 515}\n"
     ]
    }
   ],
   "source": [
    "# Configure a single-precision statevector simulator backend\n",
    "simulator = Aer.get_backend('aer_simulator_statevector')\n",
    "simulator.set_options(precision='single')\n",
    "\n",
    "# Run and get counts\n",
    "result = simulator.run(circ).result()\n",
    "counts = result.get_counts(circ)\n",
    "print(counts)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Setting the simulation precesion applies to both CPU and GPU simulation devices. Single precision will halve the requried memeory and may provide performance improvements on certain systems."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Custom Simulator Instructions"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Saving the simulator state\n",
    "\n",
    "The state of the simulator can be saved in a variety of formats using custom simulator instructions.\n",
    "\n",
    "\n",
    "| Circuit method | Description |Supported Methods | \n",
    "|----------------|-------------|------------------|\n",
    "| `save_state` | Save the simulator state in the native format for the simulation method | All | \n",
    "| `save_statevector` | Save the simulator state as a statevector | `\"automatic\"`, `\"statevector\"`, `\"matrix_product_state\"`, `\"extended_stabilizer\"`|\n",
    "| `save_stabilizer` | Save the simulator state as a Clifford stabilizer | `\"automatic\"`, `\"stabilizer\"`| \n",
    "| `save_density_matrix` | Save the simulator state as a density matrix | `\"automatic\"`, `\"statevector\"`, `\"matrix_product_state\"`, `\"density_matrix\"` |\n",
    "| `save_matrix_product_state` | Save the simulator state as a a matrix product state tensor | `\"automatic\"`, `\"matrix_product_state\"`|\n",
    "| `save_unitary` | Save the simulator state as unitary matrix of the run circuit | `\"automatic\"`, `\"unitary\"`|\n",
    "| `save_superop` | Save the simulator state as superoperator matrix of the run circuit | `\"automatic\"`, `\"superop\"`|\n",
    "\n",
    "Note that these instructions are only supported by the Aer simulator and will result in an error if a circuit containing them is run on a non-simulator backend such as an IBM Quantum device."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Saving the final statevector\n",
    "\n",
    "To save the final statevector of the simulation we can append the circuit with the `save_statevector` instruction. Note that this instruction should be applied *before* any measurements if we do not want to save the collapsed post-measurement state"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1080x360 with 2 Axes>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Construct quantum circuit without measure\n",
    "circ = QuantumCircuit(2)\n",
    "circ.h(0)\n",
    "circ.cx(0, 1)\n",
    "circ.save_statevector()\n",
    "\n",
    "# Transpile for simulator\n",
    "simulator = Aer.get_backend('aer_simulator')\n",
    "circ = transpile(circ, simulator)\n",
    "\n",
    "# Run and get statevector\n",
    "result = simulator.run(circ).result()\n",
    "statevector = result.get_statevector(circ)\n",
    "plot_state_city(statevector, title='Bell state')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Saving the circuit unitary\n",
    "\n",
    "To save the unitary matrix for a `QuantumCircuit` we can append the circuit with the `save_unitary` instruction. Note that this circuit cannot contain any measurements or resets since these instructions are not suppored on for the `\"unitary\"` simulation method"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Circuit unitary:\n",
      " [[ 0.70711+0.j  0.70711-0.j  0.     +0.j  0.     +0.j]\n",
      " [ 0.     +0.j  0.     +0.j  0.70711+0.j -0.70711+0.j]\n",
      " [ 0.     +0.j  0.     +0.j  0.70711+0.j  0.70711-0.j]\n",
      " [ 0.70711+0.j -0.70711+0.j  0.     +0.j  0.     +0.j]]\n"
     ]
    }
   ],
   "source": [
    "# Construct quantum circuit without measure\n",
    "circ = QuantumCircuit(2)\n",
    "circ.h(0)\n",
    "circ.cx(0, 1)\n",
    "circ.save_unitary()\n",
    "\n",
    "# Transpile for simulator\n",
    "simulator = Aer.get_backend('aer_simulator')\n",
    "circ = transpile(circ, simulator)\n",
    "\n",
    "# Run and get unitary\n",
    "result = simulator.run(circ).result()\n",
    "unitary = result.get_unitary(circ)\n",
    "print(\"Circuit unitary:\\n\", unitary.round(5))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Saving multiple states\n",
    "\n",
    "We can also apply save instructions at multiple locations in a circuit. Note that when doing this we must provide a unique label for each instruction to retrieve them from the results"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'psi_3': array([0.58778525+0.j        , 0.        -0.80901699j]),\n",
       " 'psi_2': array([0.95105652+0.j        , 0.        -0.30901699j]),\n",
       " 'psi_5': array([-1.+0.00000000e+00j,  0.-2.77555756e-16j]),\n",
       " 'psi_1': array([1.+0.j, 0.+0.j]),\n",
       " 'psi_4': array([-0.30901699+0.j        ,  0.        -0.95105652j]),\n",
       " 'psi_0': array([1.+0.j, 0.+0.j])}"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Construct quantum circuit without measure\n",
    "steps = 5\n",
    "circ = QuantumCircuit(1)\n",
    "for i in range(steps):\n",
    "    circ.save_statevector(label=f'psi_{i}')\n",
    "    circ.rx(i * np.pi / steps, 0)\n",
    "circ.save_statevector(label=f'psi_{steps}')\n",
    "\n",
    "# Transpile for simulator\n",
    "simulator = Aer.get_backend('aer_simulator')\n",
    "circ = transpile(circ, simulator)\n",
    "\n",
    "# Run and get saved data\n",
    "result = simulator.run(circ).result()\n",
    "data = result.data(0)\n",
    "data"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Setting the simulator to a custom state\n",
    "\n",
    "The `AerSimulator` allows setting a custom simulator state for several of its simulation methods using custom simulator instructions\n",
    "\n",
    "| Circuit method | Description |Supported Methods | \n",
    "|----------------|-------------|------------------|\n",
    "| `set_statevector` | Set the simulator state to the specified statevector | `\"automatic\"`, `\"statevector\"`, `\"density_matrix\"`|\n",
    "| `set_stabilizer` | Set the simulator state to the specified Clifford stabilizer | `\"automatic\"`, `\"stabilizer\"`| \n",
    "| `set_density_matrix` | Set the simulator state to the specified  density matrix | `\"automatic\"`, `\"density_matrix\"` |\n",
    "| `set_unitary` | Set the simulator state to the specified  unitary matrix | `\"automatic\"`, `\"unitary\"`, `\"superop\"`|\n",
    "| `set_superop` | Set the simulator state to the specified superoperator matrix | `\"automatic\"`, `\"superop\"`|\n",
    "\n",
    "\n",
    "**Notes:**\n",
    "* These instructions must be applied to all qubits in a circuit, otherwise an exception will be raised.\n",
    "* The input state must also be a valid state (statevector, denisty matrix, unitary etc) otherwise an exception will be raised.\n",
    "* These instructions can be applied at any location in a circuit and will override the current state with the specified one. Any classical register values (eg from preceeding measurements) will be unaffected\n",
    "* Set state instructions are only supported by the Aer simulator and will result in an error if a circuit containing them is run on a non-simulator backend such as an IBM Quantum device."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Setting a custom statevector\n",
    "\n",
    "The `set_statevector` instruction can be used to set a custom `Statevector` state. The input statevector must be valid ($|\\langle\\psi|\\psi\\rangle|=1$)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'statevector': array([ 0.18572453-0.03102771j, -0.26191269-0.18155865j,\n",
       "         0.12367038-0.47837907j,  0.66510011-0.4200986j ])}"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Generate a random statevector\n",
    "num_qubits = 2\n",
    "psi = qi.random_statevector(2 ** num_qubits, seed=100)\n",
    "\n",
    "# Set initial state to generated statevector\n",
    "circ = QuantumCircuit(num_qubits)\n",
    "circ.set_statevector(psi)\n",
    "circ.save_state()\n",
    "\n",
    "# Transpile for simulator\n",
    "simulator = Aer.get_backend('aer_simulator')\n",
    "circ = transpile(circ, simulator)\n",
    "\n",
    "# Run and get saved data\n",
    "result = simulator.run(circ).result()\n",
    "result.data(0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Using the initialize instruction\n",
    "\n",
    "It is also possible to initialize the simulator to a custom statevector using the `initialize` instruction. Unlike the `set_statevector` instruction this instruction is also supported on real device backends by unrolling to reset and standard gate instructions."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'statevector': array([ 0.18572453-0.03102771j, -0.26191269-0.18155865j,\n",
       "         0.12367038-0.47837907j,  0.66510011-0.4200986j ])}"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Use initilize instruction to set initial state\n",
    "circ = QuantumCircuit(num_qubits)\n",
    "circ.initialize(psi, range(num_qubits))\n",
    "circ.save_state()\n",
    "\n",
    "# Transpile for simulator\n",
    "simulator = Aer.get_backend('aer_simulator')\n",
    "circ = transpile(circ, simulator)\n",
    "\n",
    "# Run and get result data\n",
    "result = simulator.run(circ).result()\n",
    "result.data(0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Setting a custom density matrix\n",
    "\n",
    "The `set_density_matrix` instruction can be used to set a custom `DensityMatrix` state. The input density matrix must be valid ($Tr[\\rho]=1, \\rho \\ge 0$)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'density_matrix': array([[ 0.2075308 -3.11427124e-18j,  0.13161422-1.76084787e-02j,\n",
       "          0.0442826 +7.74270413e-02j,  0.04852053-1.30317117e-02j],\n",
       "        [ 0.13161422+1.76084787e-02j,  0.20106116-2.89376869e-18j,\n",
       "          0.02568549-3.68981173e-02j,  0.0482903 -4.36791212e-02j],\n",
       "        [ 0.0442826 -7.74270413e-02j,  0.02568549+3.68981173e-02j,\n",
       "          0.39731492+6.09745953e-18j, -0.01114025-1.34264228e-01j],\n",
       "        [ 0.04852053+1.30317117e-02j,  0.0482903 +4.36791212e-02j,\n",
       "         -0.01114025+1.34264228e-01j,  0.19409312-8.94195941e-20j]])}"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "num_qubits = 2\n",
    "rho = qi.random_density_matrix(2 ** num_qubits, seed=100)\n",
    "circ = QuantumCircuit(num_qubits)\n",
    "circ.set_density_matrix(rho)\n",
    "circ.save_state()\n",
    "\n",
    "# Transpile for simulator\n",
    "simulator = Aer.get_backend('aer_simulator')\n",
    "circ = transpile(circ, simulator)\n",
    "\n",
    "# Run and get saved data\n",
    "result = simulator.run(circ).result()\n",
    "result.data(0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Setting a custom stabilizer state\n",
    "\n",
    "The `set_stabilizer` instruction can be used to set a custom `Clifford` stabilizer state. The input stabilizer must be a valid `Clifford`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'stabilizer': {'destabilizer': ['-XZ', '-YX'], 'stabilizer': ['+ZZ', '-IZ']}}"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Generate a random Clifford C\n",
    "num_qubits = 2\n",
    "stab = qi.random_clifford(num_qubits, seed=100)\n",
    "\n",
    "# Set initial state to stabilizer state C|0>\n",
    "circ = QuantumCircuit(num_qubits)\n",
    "circ.set_stabilizer(stab)\n",
    "circ.save_state()\n",
    "\n",
    "# Transpile for simulator\n",
    "simulator = Aer.get_backend('aer_simulator')\n",
    "circ = transpile(circ, simulator)\n",
    "\n",
    "# Run and get saved data\n",
    "result = simulator.run(circ).result()\n",
    "result.data(0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Setting a custom unitary\n",
    "\n",
    "The `set_unitary` instruction can be used to set a custom unitary `Operator` state. The input unitary matrix must be valid ($U^\\dagger U=\\mathbb{1}$)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'unitary': array([[-0.44885724-0.26721573j,  0.10468034-0.00288681j,\n",
       "          0.4631425 +0.15474915j, -0.11151309-0.68210936j],\n",
       "        [-0.37279054-0.38484834j,  0.3820592 -0.49653433j,\n",
       "          0.14132327-0.17428515j,  0.19643043+0.48111423j],\n",
       "        [ 0.2889092 +0.58750499j,  0.39509694-0.22036424j,\n",
       "          0.49498355+0.2388685j ,  0.25404989-0.00995706j],\n",
       "        [ 0.01830684+0.10524311j,  0.62584001+0.01343146j,\n",
       "         -0.52174025-0.37003296j,  0.12232823-0.41548904j]])}"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Generate a random unitary\n",
    "num_qubits = 2\n",
    "unitary = qi.random_unitary(2 ** num_qubits, seed=100)\n",
    "\n",
    "# Set initial state to unitary\n",
    "circ = QuantumCircuit(num_qubits)\n",
    "circ.set_unitary(unitary)\n",
    "circ.save_state()\n",
    "\n",
    "# Transpile for simulator\n",
    "simulator = Aer.get_backend('aer_simulator')\n",
    "circ = transpile(circ, simulator)\n",
    "\n",
    "# Run and get saved data\n",
    "result = simulator.run(circ).result()\n",
    "result.data(0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-08-19T16:54:58.630868Z",
     "start_time": "2019-08-19T16:54:58.624544Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<h3>Version Information</h3><table><tr><th>Qiskit Software</th><th>Version</th></tr><tr><td>Qiskit</td><td>0.25.0</td></tr><tr><td>Terra</td><td>0.17.0</td></tr><tr><td>Aer</td><td>0.8.0</td></tr><tr><td>Ignis</td><td>0.6.0</td></tr><tr><td>Aqua</td><td>0.9.0</td></tr><tr><td>IBM Q Provider</td><td>0.12.2</td></tr><tr><th>System information</th></tr><tr><td>Python</td><td>3.7.7 (default, May  6 2020, 04:59:01) \n",
       "[Clang 4.0.1 (tags/RELEASE_401/final)]</td></tr><tr><td>OS</td><td>Darwin</td></tr><tr><td>CPUs</td><td>6</td></tr><tr><td>Memory (Gb)</td><td>32.0</td></tr><tr><td colspan='2'>Fri Apr 02 11:48:23 2021 EDT</td></tr></table>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div style='width: 100%; background-color:#d5d9e0;padding-left: 10px; padding-bottom: 10px; padding-right: 10px; padding-top: 5px'><h3>This code is a part of Qiskit</h3><p>&copy; Copyright IBM 2017, 2021.</p><p>This code is licensed under the Apache License, Version 2.0. You may<br>obtain a copy of this license in the LICENSE.txt file in the root directory<br> of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.<p>Any modifications or derivative works of this code must retain this<br>copyright notice, and modified files need to carry a notice indicating<br>that they have been altered from the originals.</p></div>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import qiskit.tools.jupyter\n",
    "%qiskit_version_table\n",
    "%qiskit_copyright"
   ]
  }
 ],
 "metadata": {
  "celltoolbar": "Tags",
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.5"
  },
  "varInspector": {
   "cols": {
    "lenName": 16,
    "lenType": 16,
    "lenVar": 40
   },
   "kernels_config": {
    "python": {
     "delete_cmd_postfix": "",
     "delete_cmd_prefix": "del ",
     "library": "var_list.py",
     "varRefreshCmd": "print(var_dic_list())"
    },
    "r": {
     "delete_cmd_postfix": ") ",
     "delete_cmd_prefix": "rm(",
     "library": "var_list.r",
     "varRefreshCmd": "cat(var_dic_list()) "
    }
   },
   "types_to_exclude": [
    "module",
    "function",
    "builtin_function_or_method",
    "instance",
    "_Feature"
   ],
   "window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
